home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Whiteline: delta
/
whiteline CD Series - delta.iso
/
dl_serie
/
updates
/
159
/
patched
/
chmeleon.txt
< prev
Wrap
Text File
|
1995-11-25
|
14KB
|
276 lines
The Chameleon Vers. 1.19
---------------------------
Karsten Isakovic geb. Gerlach
Wilmersdorferstr 82
1000 Berlin 12
Veröffentlicht im Markt&Technik-Verlag,
alle Rechte liegen beim Autor
Jeder kennt folgene Probleme:
-----------------------------
- Es gibt viele ACCs, die man gerne benutzen möchte, nur kann man
leider nicht alle gleichzeitig laden. Um ein neues ACC zu in-
stallieren ist sogar ein Neubooten notwendig. Aus diesem Grunde
gibt es MultiAcc's, die es erlauben mehrere ACCs nachzuladen
oder gar riesige MonsterACCs, die Alles was man je gebrauchen
könnte unter einem einzigen Menüpunkt anbieten. Diese Lösungen
kosten aber immer sehr viel Speicherplatz, der bei den meisten
ATARI-ST Benutzern eher Mangelware sein dürfte.
- Das Programmieren von ACCs ist eine sehr lästige Angelegenheit,
da man für jeden Test erst einmal neu booten muß. Dies kostet
den Programmierer sehr viel Zeit und Nerven.
Für diese Probleme gibt es nun eine neue Lösung:
------------------------------------------------
Das CHAMELEON ist ein extrem kurzes ACC - knapp 5KB -, welches
in der Lage ist, jedes beliebige ACC nachzuladen und - dies ist
der Clou am Chameleon - auch wieder freigeben kann. Dabei wird
nicht nur der Hauptspeicher des ACCs entfernt, sondern alle
Resourcen, die das ACC vom Rechner angefordert hat.
Bedienung
---------
Kopieren Sie einfach das CHMELEON.ACC auf die Bootdiskette und
booten Sie neu. Wenn Sie nun den 'The Chameleon'-Menüeintrag
auswählen, erscheint eine FileSelectorBox, in der Sie das nach-
zuladende ACC auswählen können.
Wenn Sie nicht möchten, daß das ACC gleich geöffnet wird, so
können Sie beim Anwählen des Filenamens in der FileSelectorBox
durch Return oder einen Doppelklick die linke Shifttaste ge-
drückt halten.
Nachdem das ACC gestartet ist, erscheint dessen Eintrag anstatt
des Chameleon-Menüeintrags. Der Pfeil am Anfang des Menütextes
zeigt an, daß dieses ACC von Chameleon nachgeladen wurde.
Sollte das ACC normalerweise 2 Menüeinträge belegen, so wird
der Menütext in der Mitte gesplittet. Wenn Sie nun zusätzlich
zum Mausklick eine Shifttaste gedrückt halten, wird der rechte
Eintrag ausgewählt. Belegt das ACC normalerweise 3 Einträge, so
können Sie den mittleren Eintrag mit der linken Shifttaste und
den rechten Eintrag mit der rechten Shifttaste auswählen.
Sie können nun ganz normal mit dem ACC arbeiten, als hätten Sie
es schon seit dem Booten geladen.
Möchten Sie das ACC wieder entfernen, so wählen Sie einfach den
Menütitel an und halten dabei die Shift-Alternate Tasten ge-
drückt. Sollte das ACC noch Fenster geöffnet haben, so werden
diese automatisch geschlossen. Aller vom ACC belegter Speicher
wird freigegeben und es erscheint wieder der 'The Chameleon'
Menüeintrag.
Wenn Sie das ACC nicht nur entfernen, sondern gleich ein neues
ACC laden wollen, so halten Sie während des Klicks in die Menü-
leiste zusätzlich zu den Shift-Alternate tasten noch die rechte
Maustaste gedrückt. Nach dem Entfernen des ACCs erscheint so
automatisch die FileSelctorBox.
Installation für GEMINI-Benutzer:
---------------------------------
Überprüfen Sie in der Mupfel mit 'env', ob im SUFFIX auch 'acc'
vorkommt. Wenn nein, fügen Sie den Suffix 'acc' mit dem Befehl
'setenv SUFFIX "$SUFFIX;acc" ' hinzu. Am Besten ist es, wenn
Sie in dem File MUPFEL.MUP die Zeile mit dem SUFFIX um 'acc'
erweitern.
Nun können Sie CHMELEON.ACC anwählen und als Defaultanwendung
für '*.AC?' anmelden.
Als nächstes sollten Sie die zu ladenden ACCs in ACX umbennen,
da GEMINI bei dem SUFFIX '*.ACC' nur testet, ob das ACC schon
geladen ist. Bei einem Doppelklick auf ein File mit dem SUFFIX
'*.ACX' wird hingegen eine Mitteilung an 'The Chameleon' ver-
schickt, welches daraufhin das angeklickte File nachlädt und
öffnet. War vorher ein anderes ACC durch Chameleon geladen, so
wird dieses vorher entfernt.
Wenn Sie 'The Chameleon' auf dem Desktop von GEMINI als Icon
installieren, können Sie ACCs auch laden, indem Sie sie auf das
Chameleon Icon ziehen. Verschieben Sie hingegen ein Textfile
auf das 'The Chameleon'-Icon, so wird die GEMINI-Message an das
nachgeladene ACC durchgereicht.
Ist das nachzuladende ACC auch als Icon auf dem Desktop instal-
liert, so können sie auch dessen Icon auf das Chameleon-Icon
ziehen.
Nimmt das ACC GEMINI-Messages entgegen, so ist es egal, ob Sie
Files auf das Chameleon-Icon oder auf das ACC-Icon ziehen.
Default-ACC:
------------
Bei den Patchvariablen versteckt sich eine weitere Besonderheit
von 'The Chameleon'. Es ist in der Lage, ein Default-ACC beim
Booten zu laden. Somit können Sie Ihre Lieblingskonfiguration
von ACCs vorgeben, ohne auf die neue Flexibilität verzichten zu
müssen.
Als Default ist das ATARI-Kontrollfeld als CONTROL.ACX einge-
tragen, es werden beim Booten wie gewohnt alle Voreinstellungen
vorgenommen. Benötigen Sie nun ein anderes ACC, entfernen Sie
einfach das Kontrollfeld und laden Sie das andere ACC.
Patchvariablen:
---------------
Es ist günstig, wenn Sie erst eine Kopie des CHMELEON.ACC an-
fertigen und mit dieser experimentieren. Alle Eingaben in den
Patchbereich müssen Sie mit einem Diskmonitor vornehmen.
Da es warscheinlich immer Kollisionen bei der Festlegung von
Tastencodes gibt, können Sie die Shiftkombinationen von 'The
Chamelon' ändern.
Vor dem String 'V1.19 ©K.Isakovic Berlin 09.10.90' finden Sie
ein '^', welches das Trennzeichen zwischen den Patchbereichen
ist. Bei Pfadangaben markiert es so den längst möglichen
Eintrag, da es nicht überschrieben werden darf.
Die ersten zwei Bytes ($0A $02) vor dem ^ bestimmen die Shift-
Kombinationen. Das erste Byte ($0A) bestimmt die Kombination
zum Entfernen eines ACCs, das zweite Bytes ($02) bestimmt die
Kombination die beim Nachladen des ACCs gedrückt werden kann,
damit dieses nicht gleich geöffnet wird. Trägt man hier den
Wert $00 ein, so wird ein ACC nicht automatisch geöffnet,
sondern nur, wenn eine Shifttaste gedrückt wird.
Die Werte sind jeweils der hexadezimale Wert der Summe aus der
folgenden Tabelle:
Wert | Taste
------+--------
1 | rechts Shift
2 | links Shift
4 | Control
8 | Alternate
Das Byte $0A entspricht dem Wert 10, was wiederrum Linksshift-
Alternate entspricht.
Vor diesen beiden Shiftkombinationen befindet sich der Name des
ACCs, welches beim Booten automatisch nachgeladen wird. Ist das
erste Byte nach dem '^' gleich $00 (Default), so wird kein ACC
nachgeladen. Tragen Sie hier den absoluten Pfadnamen des ACCs
ein (z.B. A:\CONTROL.ACX, die Laufwerksangabe ist wichtig!).
Die Laufwerksangabe 'A:\' wird beim Booten durch das Boot-
Laufwerk ersetzt. Ist ein hier anderer Buchstabe als 'A' einge-
tragen, so wird der Wert nicht verändert. Vergessen Sie bitte
nicht das NULL-Byte ($00) am Ende des Namens.
Vor dieser Angabe kann man in einem weiteren durch ^ getrennten
Feld den Pfad bestimmen, der beim ersten Öffnen der FileSelect-
Box benutzt wird. Dies ist praktisch, wenn Sie ihre ACCs in ein
Unter-Direktory verbannt haben. Für die Laufwerksangabe gilt
dasselbe wie bei der vorherigen Patchvariablen.
Die letzte Patchvariable ist ein Byte-Wert, der den neuen Aus-
gabe-Kanal angibt, der bei der Ausgabenumlenkung benutzt werden
soll. Ist der Wert $00 eingetragen, findet keine Umlenkung
statt. Da es bei ST leider kein NULL-Device gibt, daß alle Aus-
gaben einfach schluckt, ist die Nummer eines Files einge-
tragen, daß warscheinlich nicht geöffnet ist: Das Gemdos ver-
waltet maximal 75 offene Dateien, die Umleitung findet auf das
letzte Handle mit der Nummer $4A (74) statt. Vor dem Umlenken
wird überprüft, ob dieses Handle doch schon geöffnet ist. Falls
ja, findet keine Umleitung der Ausgaben statt.
Ein paar Details:
-----------------
Das Chameleon ist TOS-unabhänig, da es keine illegalen System-
variablen benutzt. Es hängt sich in den GEM- und GEMDOS-Trap
mit der XBRA-Kennung 'Cham' ein, die Traphandler sind so ge-
schrieben, daß sie auch mit einem 68010 bis 68030 laufen.
Wird der Menüeintrag ausgewählt, erscheint eine FSelBox, in der
man das nachzuladende ACC bestimmt. Das ACC wird nun geladen
und direkt gestartet. In den Traps protokolliert das Chameleon
alle Anforderungen von Systemresourcen des nachgeladenen ACCs
mit: Dazu zählen Fenster, VDI-Workstations, Resourcen und
Speicherblöcke. Auch das Nachladen von GDOS-Fonts, (un)sichtbar
machen des Mauszeiger usw... wird protokolliert, damit 'The
Chameleon' den Orginalzustand wieder herstellen kann.
Wenn der Benutzer das ACC wieder entfernen möchte, so werden
vorher alle Systemvektoren überprüft, ob sie in einen der
Speicherbereiche des ACC zeigen. Dabei findet eine Verfolgung
von XBRA-Ketten statt.
Sollte sich das ACC in das System eingeklinkt haben, so kann es
nicht entfernt werden und es erscheint eine Warnmeldung. Wird
allerdings zum Einhängen in die Vektoren das XBRA-Verfahren be-
nutzt, so kann das ACC trotzdem entfernt werden.
Wird in einer GEMINI-Message der String '$KILL' verschickt, so
wird ein nachgeladenes ACC entfernt.
Bei einem Auflösungswechsel wird ein nachgeladenes ACC entfernt
und die eigenen Traphandler werden ausgeklinkt. Dies ist nur
möglich, wenn das XBRA-Protokoll benutzt wird. Konnte das
Chameleon nicht ausgehängt werden, so hängt sich der Rechner
auf, da bei einem Auflösungswechsel alle ACCs entfernt, der
nun nicht mehr existierende Traphandler aber weiterhin angespr-
ungen wird.
Manche ACCs geben beim Starten eine Text-Meldung auf dem Bild-
schirm aus. Wenn Sie ein solches ACC im Desktop nachladen,
würde es die Menüzeile überschreiben. 'The Chameleon' lenkt
diese Ausgaben in ein nicht geöffnetes File um.
Bekannte Probleme:
------------------
- Der Speichersegmentierung können Sie wirksam begegnen, indem
Sie die ACCs auf dem Desktop wieder freigeben. Wenn Sie nun ein
Textfile zum Ansehen anwählen und kurz ansehen, so organisiert
der Desktop seinen Speicher neu.
- Beim Nachladen von resetfesten RamDisks kann es Probleme geben,
da diese auch die MEMTOP-Variable verändern, die von Chameleon
nicht wieder restauriert wird. Bei erneutem Start wird die Ram-
Disk ihre Daten unverändert vorfinden.
- Wenn ein ACC keinen Menütitel anmeldet, trägt 'The Chameleon'
zumindest den File-Namen in der Menüleiste ein. Als Kennzeichen
werden nun 2 Pfeile vor den Namen gesetzt.
Ein kleiner Tip:
----------------
Wenn Sie zwei Chameleon's installieren, kostet Sie dies nur ~11
KB Hauptspeicher. Auf diese Art und Weise haben Sie immer die
ACCs, die Sie gerade benötigen.
Geschichte
----------
The Chameleon hat eine sehr lange und ausgiebige Testphase hinter
sich. ACCs nachladen konnte es schon ab der Version 0.00, es
folgten dann viele Erweiterungen bis zur Version 0.37. Da der
Veröffentlichungstermin immer näher rückte, wurde als nächste
Version die 1.00 gewählt. Einige Tester waren schon ab Version
0.11 restlos zufrieden, ab der 0.28 gab es keine Klagen mehr. In
den restlichen Versionen (0.28--0.37, 1.00--1.19) wurden nur noch
kleine Veränderungen vorgenommen.
Ab der Version 1.07 kann das Chamäleon beim Booten ein Default-
ACC nachladen. Ab 1.12 können auch ACCs freigegeben werden, die
keinen Menüeintrag belegen, ab 1.13 wurde die Standardausgabe
umgelenkt.
******************************************************************
* *
* Unter der Voraussetzung, daß die Dateien *
* *
* CHMELEON.ACC und CHMELEON.TXT *
* *
* unverändert kopiert werden, darf 'The Chameleon' für private *
* Anwender frei kopiert und benutzt werden. *
* *
* Alle Rechte (Copyright,Vertrieb...) für 'The Chameleon' liegen *
* beim Autor (K.Isakovic). Das Erstveröffentlichungsrecht liegt *
* beim Markt&Technik Verlag. Diesem ist auch Vertrieb auf einer *
* Monatsdiskette gestattet. (Nicht aber auf der Jahres- oder *
* Sonder-Disk!) *
* Eine kommerzielle Nutzung in jeder Form (dies schließt auch *
* den Vertrieb über Public-Domain-Sammeldisketten oder ähn- *
* liches ein) ist NICHT GESTATTET. *
* *
* Die neuste Version kann man direkt beim Autor oder in den MAUS *
* Mailboxen beziehen. *
* *
******************************************************************
Mit freundlichen Grüßen
Karsten Isakovic